Upon building a system that provides various services such as an information service and the like using a database on a WWW for the Internet and intranets, a server often uses session management.
Session management is described in, e.g., Japanese Patent Laid-Open No. 11-149449 or the like. The session management described in this reference will be briefly explained. According to this reference, in a state wherein a server does not use session management (no communication connection is established), a client transmits a request including no session ID to the server. Since the server recognizes that the request from the client does not include any session ID, it creates a session object (information that pertains to a communication method and the like with the client) and a corresponding session ID, and transmits a response including that session ID to the client. After that, the client transmits a request including the session ID sent from the server to the server when it transmits a request to the server. When the request from the client includes the session ID, the server creates a session management with reference to a session object corresponding to the session ID. Note that this reference manages the state of the client for a plurality of requests by holding the state of the client in the session object.
However, with the above method, for example, when the user of the client aborts use of the client while the server creates a session management, the server continues to hold the session object, and the server resources such as the memory that stores the session object cannot be released.
To solve this problem, in servers such as an Internet information server available from Microsoft Corporation, Tomcat available from Jakarta Project and the like, the presence/absence of transmission of a request from the client is monitored, and when no request is received from a predetermined client for a predetermined period of time, a session object is forcibly released to cancel the communication connection, thus improving the use efficiency of the server resources.
With such server, the following problem arises. When the client establishes communication connection to the server with such functionality, if the client does not send any request to the server within a predetermined period of time, the session object is released and communication connection is automatically canceled against the will of the user of the client.
For example, Japanese Patent Laid-Open No. 10-326207 provides a solution in which a program which runs on the client continues to transmit requests required to maintain the session object to the server, thus preventing the session object from being released.
However, according to the method disclosed in Japanese Patent Laid-Open No. 10-326207, the user must recognize and explicitly instruct execution/stop to the program that transmits requests required to maintain the session object. For example, in a state wherein the server creates a session management, if the user of the client aborts a job without quitting the program that transmits requests required to maintain the session object, the session object is uselessly maintained. When a plurality of users share one client, the session object of the previous user is maintained unless the program is temporarily quitted every time the user changes. In light of this, using the method disclosed in Japanese Patent Laid-Open No. 10-326207, indeed the server resources efficient use in session management can be improved, then again the user's convenience is impaired.